package com.hebeu.device.pojo;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class DMaintenanceExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public DMaintenanceExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andMainIdIsNull() {
            addCriterion("main_id is null");
            return (Criteria) this;
        }

        public Criteria andMainIdIsNotNull() {
            addCriterion("main_id is not null");
            return (Criteria) this;
        }

        public Criteria andMainIdEqualTo(Integer value) {
            addCriterion("main_id =", value, "mainId");
            return (Criteria) this;
        }

        public Criteria andMainIdNotEqualTo(Integer value) {
            addCriterion("main_id <>", value, "mainId");
            return (Criteria) this;
        }

        public Criteria andMainIdGreaterThan(Integer value) {
            addCriterion("main_id >", value, "mainId");
            return (Criteria) this;
        }

        public Criteria andMainIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("main_id >=", value, "mainId");
            return (Criteria) this;
        }

        public Criteria andMainIdLessThan(Integer value) {
            addCriterion("main_id <", value, "mainId");
            return (Criteria) this;
        }

        public Criteria andMainIdLessThanOrEqualTo(Integer value) {
            addCriterion("main_id <=", value, "mainId");
            return (Criteria) this;
        }

        public Criteria andMainIdIn(List<Integer> values) {
            addCriterion("main_id in", values, "mainId");
            return (Criteria) this;
        }

        public Criteria andMainIdNotIn(List<Integer> values) {
            addCriterion("main_id not in", values, "mainId");
            return (Criteria) this;
        }

        public Criteria andMainIdBetween(Integer value1, Integer value2) {
            addCriterion("main_id between", value1, value2, "mainId");
            return (Criteria) this;
        }

        public Criteria andMainIdNotBetween(Integer value1, Integer value2) {
            addCriterion("main_id not between", value1, value2, "mainId");
            return (Criteria) this;
        }

        public Criteria andMainPersonIsNull() {
            addCriterion("main_person is null");
            return (Criteria) this;
        }

        public Criteria andMainPersonIsNotNull() {
            addCriterion("main_person is not null");
            return (Criteria) this;
        }

        public Criteria andMainPersonEqualTo(String value) {
            addCriterion("main_person =", value, "mainPerson");
            return (Criteria) this;
        }

        public Criteria andMainPersonNotEqualTo(String value) {
            addCriterion("main_person <>", value, "mainPerson");
            return (Criteria) this;
        }

        public Criteria andMainPersonGreaterThan(String value) {
            addCriterion("main_person >", value, "mainPerson");
            return (Criteria) this;
        }

        public Criteria andMainPersonGreaterThanOrEqualTo(String value) {
            addCriterion("main_person >=", value, "mainPerson");
            return (Criteria) this;
        }

        public Criteria andMainPersonLessThan(String value) {
            addCriterion("main_person <", value, "mainPerson");
            return (Criteria) this;
        }

        public Criteria andMainPersonLessThanOrEqualTo(String value) {
            addCriterion("main_person <=", value, "mainPerson");
            return (Criteria) this;
        }

        public Criteria andMainPersonLike(String value) {
            addCriterion("main_person like", value, "mainPerson");
            return (Criteria) this;
        }

        public Criteria andMainPersonNotLike(String value) {
            addCriterion("main_person not like", value, "mainPerson");
            return (Criteria) this;
        }

        public Criteria andMainPersonIn(List<String> values) {
            addCriterion("main_person in", values, "mainPerson");
            return (Criteria) this;
        }

        public Criteria andMainPersonNotIn(List<String> values) {
            addCriterion("main_person not in", values, "mainPerson");
            return (Criteria) this;
        }

        public Criteria andMainPersonBetween(String value1, String value2) {
            addCriterion("main_person between", value1, value2, "mainPerson");
            return (Criteria) this;
        }

        public Criteria andMainPersonNotBetween(String value1, String value2) {
            addCriterion("main_person not between", value1, value2, "mainPerson");
            return (Criteria) this;
        }

        public Criteria andDisTimeIsNull() {
            addCriterion("dis_time is null");
            return (Criteria) this;
        }

        public Criteria andDisTimeIsNotNull() {
            addCriterion("dis_time is not null");
            return (Criteria) this;
        }

        public Criteria andDisTimeEqualTo(Date value) {
            addCriterion("dis_time =", value, "disTime");
            return (Criteria) this;
        }

        public Criteria andDisTimeNotEqualTo(Date value) {
            addCriterion("dis_time <>", value, "disTime");
            return (Criteria) this;
        }

        public Criteria andDisTimeGreaterThan(Date value) {
            addCriterion("dis_time >", value, "disTime");
            return (Criteria) this;
        }

        public Criteria andDisTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("dis_time >=", value, "disTime");
            return (Criteria) this;
        }

        public Criteria andDisTimeLessThan(Date value) {
            addCriterion("dis_time <", value, "disTime");
            return (Criteria) this;
        }

        public Criteria andDisTimeLessThanOrEqualTo(Date value) {
            addCriterion("dis_time <=", value, "disTime");
            return (Criteria) this;
        }

        public Criteria andDisTimeIn(List<Date> values) {
            addCriterion("dis_time in", values, "disTime");
            return (Criteria) this;
        }

        public Criteria andDisTimeNotIn(List<Date> values) {
            addCriterion("dis_time not in", values, "disTime");
            return (Criteria) this;
        }

        public Criteria andDisTimeBetween(Date value1, Date value2) {
            addCriterion("dis_time between", value1, value2, "disTime");
            return (Criteria) this;
        }

        public Criteria andDisTimeNotBetween(Date value1, Date value2) {
            addCriterion("dis_time not between", value1, value2, "disTime");
            return (Criteria) this;
        }

        public Criteria andCheckOrderIsNull() {
            addCriterion("check_order is null");
            return (Criteria) this;
        }

        public Criteria andCheckOrderIsNotNull() {
            addCriterion("check_order is not null");
            return (Criteria) this;
        }

        public Criteria andCheckOrderEqualTo(String value) {
            addCriterion("check_order =", value, "checkOrder");
            return (Criteria) this;
        }

        public Criteria andCheckOrderNotEqualTo(String value) {
            addCriterion("check_order <>", value, "checkOrder");
            return (Criteria) this;
        }

        public Criteria andCheckOrderGreaterThan(String value) {
            addCriterion("check_order >", value, "checkOrder");
            return (Criteria) this;
        }

        public Criteria andCheckOrderGreaterThanOrEqualTo(String value) {
            addCriterion("check_order >=", value, "checkOrder");
            return (Criteria) this;
        }

        public Criteria andCheckOrderLessThan(String value) {
            addCriterion("check_order <", value, "checkOrder");
            return (Criteria) this;
        }

        public Criteria andCheckOrderLessThanOrEqualTo(String value) {
            addCriterion("check_order <=", value, "checkOrder");
            return (Criteria) this;
        }

        public Criteria andCheckOrderLike(String value) {
            addCriterion("check_order like", value, "checkOrder");
            return (Criteria) this;
        }

        public Criteria andCheckOrderNotLike(String value) {
            addCriterion("check_order not like", value, "checkOrder");
            return (Criteria) this;
        }

        public Criteria andCheckOrderIn(List<String> values) {
            addCriterion("check_order in", values, "checkOrder");
            return (Criteria) this;
        }

        public Criteria andCheckOrderNotIn(List<String> values) {
            addCriterion("check_order not in", values, "checkOrder");
            return (Criteria) this;
        }

        public Criteria andCheckOrderBetween(String value1, String value2) {
            addCriterion("check_order between", value1, value2, "checkOrder");
            return (Criteria) this;
        }

        public Criteria andCheckOrderNotBetween(String value1, String value2) {
            addCriterion("check_order not between", value1, value2, "checkOrder");
            return (Criteria) this;
        }

        public Criteria andMainOrderIsNull() {
            addCriterion("main_order is null");
            return (Criteria) this;
        }

        public Criteria andMainOrderIsNotNull() {
            addCriterion("main_order is not null");
            return (Criteria) this;
        }

        public Criteria andMainOrderEqualTo(String value) {
            addCriterion("main_order =", value, "mainOrder");
            return (Criteria) this;
        }

        public Criteria andMainOrderNotEqualTo(String value) {
            addCriterion("main_order <>", value, "mainOrder");
            return (Criteria) this;
        }

        public Criteria andMainOrderGreaterThan(String value) {
            addCriterion("main_order >", value, "mainOrder");
            return (Criteria) this;
        }

        public Criteria andMainOrderGreaterThanOrEqualTo(String value) {
            addCriterion("main_order >=", value, "mainOrder");
            return (Criteria) this;
        }

        public Criteria andMainOrderLessThan(String value) {
            addCriterion("main_order <", value, "mainOrder");
            return (Criteria) this;
        }

        public Criteria andMainOrderLessThanOrEqualTo(String value) {
            addCriterion("main_order <=", value, "mainOrder");
            return (Criteria) this;
        }

        public Criteria andMainOrderLike(String value) {
            addCriterion("main_order like", value, "mainOrder");
            return (Criteria) this;
        }

        public Criteria andMainOrderNotLike(String value) {
            addCriterion("main_order not like", value, "mainOrder");
            return (Criteria) this;
        }

        public Criteria andMainOrderIn(List<String> values) {
            addCriterion("main_order in", values, "mainOrder");
            return (Criteria) this;
        }

        public Criteria andMainOrderNotIn(List<String> values) {
            addCriterion("main_order not in", values, "mainOrder");
            return (Criteria) this;
        }

        public Criteria andMainOrderBetween(String value1, String value2) {
            addCriterion("main_order between", value1, value2, "mainOrder");
            return (Criteria) this;
        }

        public Criteria andMainOrderNotBetween(String value1, String value2) {
            addCriterion("main_order not between", value1, value2, "mainOrder");
            return (Criteria) this;
        }

        public Criteria andCheckTimeIsNull() {
            addCriterion("check_time is null");
            return (Criteria) this;
        }

        public Criteria andCheckTimeIsNotNull() {
            addCriterion("check_time is not null");
            return (Criteria) this;
        }

        public Criteria andCheckTimeEqualTo(Date value) {
            addCriterion("check_time =", value, "checkTime");
            return (Criteria) this;
        }

        public Criteria andCheckTimeNotEqualTo(Date value) {
            addCriterion("check_time <>", value, "checkTime");
            return (Criteria) this;
        }

        public Criteria andCheckTimeGreaterThan(Date value) {
            addCriterion("check_time >", value, "checkTime");
            return (Criteria) this;
        }

        public Criteria andCheckTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("check_time >=", value, "checkTime");
            return (Criteria) this;
        }

        public Criteria andCheckTimeLessThan(Date value) {
            addCriterion("check_time <", value, "checkTime");
            return (Criteria) this;
        }

        public Criteria andCheckTimeLessThanOrEqualTo(Date value) {
            addCriterion("check_time <=", value, "checkTime");
            return (Criteria) this;
        }

        public Criteria andCheckTimeIn(List<Date> values) {
            addCriterion("check_time in", values, "checkTime");
            return (Criteria) this;
        }

        public Criteria andCheckTimeNotIn(List<Date> values) {
            addCriterion("check_time not in", values, "checkTime");
            return (Criteria) this;
        }

        public Criteria andCheckTimeBetween(Date value1, Date value2) {
            addCriterion("check_time between", value1, value2, "checkTime");
            return (Criteria) this;
        }

        public Criteria andCheckTimeNotBetween(Date value1, Date value2) {
            addCriterion("check_time not between", value1, value2, "checkTime");
            return (Criteria) this;
        }

        public Criteria andPersonPayIsNull() {
            addCriterion("person_pay is null");
            return (Criteria) this;
        }

        public Criteria andPersonPayIsNotNull() {
            addCriterion("person_pay is not null");
            return (Criteria) this;
        }

        public Criteria andPersonPayEqualTo(Double value) {
            addCriterion("person_pay =", value, "personPay");
            return (Criteria) this;
        }

        public Criteria andPersonPayNotEqualTo(Double value) {
            addCriterion("person_pay <>", value, "personPay");
            return (Criteria) this;
        }

        public Criteria andPersonPayGreaterThan(Double value) {
            addCriterion("person_pay >", value, "personPay");
            return (Criteria) this;
        }

        public Criteria andPersonPayGreaterThanOrEqualTo(Double value) {
            addCriterion("person_pay >=", value, "personPay");
            return (Criteria) this;
        }

        public Criteria andPersonPayLessThan(Double value) {
            addCriterion("person_pay <", value, "personPay");
            return (Criteria) this;
        }

        public Criteria andPersonPayLessThanOrEqualTo(Double value) {
            addCriterion("person_pay <=", value, "personPay");
            return (Criteria) this;
        }

        public Criteria andPersonPayIn(List<Double> values) {
            addCriterion("person_pay in", values, "personPay");
            return (Criteria) this;
        }

        public Criteria andPersonPayNotIn(List<Double> values) {
            addCriterion("person_pay not in", values, "personPay");
            return (Criteria) this;
        }

        public Criteria andPersonPayBetween(Double value1, Double value2) {
            addCriterion("person_pay between", value1, value2, "personPay");
            return (Criteria) this;
        }

        public Criteria andPersonPayNotBetween(Double value1, Double value2) {
            addCriterion("person_pay not between", value1, value2, "personPay");
            return (Criteria) this;
        }

        public Criteria andMatiPayIsNull() {
            addCriterion("mati_pay is null");
            return (Criteria) this;
        }

        public Criteria andMatiPayIsNotNull() {
            addCriterion("mati_pay is not null");
            return (Criteria) this;
        }

        public Criteria andMatiPayEqualTo(Double value) {
            addCriterion("mati_pay =", value, "matiPay");
            return (Criteria) this;
        }

        public Criteria andMatiPayNotEqualTo(Double value) {
            addCriterion("mati_pay <>", value, "matiPay");
            return (Criteria) this;
        }

        public Criteria andMatiPayGreaterThan(Double value) {
            addCriterion("mati_pay >", value, "matiPay");
            return (Criteria) this;
        }

        public Criteria andMatiPayGreaterThanOrEqualTo(Double value) {
            addCriterion("mati_pay >=", value, "matiPay");
            return (Criteria) this;
        }

        public Criteria andMatiPayLessThan(Double value) {
            addCriterion("mati_pay <", value, "matiPay");
            return (Criteria) this;
        }

        public Criteria andMatiPayLessThanOrEqualTo(Double value) {
            addCriterion("mati_pay <=", value, "matiPay");
            return (Criteria) this;
        }

        public Criteria andMatiPayIn(List<Double> values) {
            addCriterion("mati_pay in", values, "matiPay");
            return (Criteria) this;
        }

        public Criteria andMatiPayNotIn(List<Double> values) {
            addCriterion("mati_pay not in", values, "matiPay");
            return (Criteria) this;
        }

        public Criteria andMatiPayBetween(Double value1, Double value2) {
            addCriterion("mati_pay between", value1, value2, "matiPay");
            return (Criteria) this;
        }

        public Criteria andMatiPayNotBetween(Double value1, Double value2) {
            addCriterion("mati_pay not between", value1, value2, "matiPay");
            return (Criteria) this;
        }

        public Criteria andMainPermitIsNull() {
            addCriterion("main_permit is null");
            return (Criteria) this;
        }

        public Criteria andMainPermitIsNotNull() {
            addCriterion("main_permit is not null");
            return (Criteria) this;
        }

        public Criteria andMainPermitEqualTo(String value) {
            addCriterion("main_permit =", value, "mainPermit");
            return (Criteria) this;
        }

        public Criteria andMainPermitNotEqualTo(String value) {
            addCriterion("main_permit <>", value, "mainPermit");
            return (Criteria) this;
        }

        public Criteria andMainPermitGreaterThan(String value) {
            addCriterion("main_permit >", value, "mainPermit");
            return (Criteria) this;
        }

        public Criteria andMainPermitGreaterThanOrEqualTo(String value) {
            addCriterion("main_permit >=", value, "mainPermit");
            return (Criteria) this;
        }

        public Criteria andMainPermitLessThan(String value) {
            addCriterion("main_permit <", value, "mainPermit");
            return (Criteria) this;
        }

        public Criteria andMainPermitLessThanOrEqualTo(String value) {
            addCriterion("main_permit <=", value, "mainPermit");
            return (Criteria) this;
        }

        public Criteria andMainPermitLike(String value) {
            addCriterion("main_permit like", value, "mainPermit");
            return (Criteria) this;
        }

        public Criteria andMainPermitNotLike(String value) {
            addCriterion("main_permit not like", value, "mainPermit");
            return (Criteria) this;
        }

        public Criteria andMainPermitIn(List<String> values) {
            addCriterion("main_permit in", values, "mainPermit");
            return (Criteria) this;
        }

        public Criteria andMainPermitNotIn(List<String> values) {
            addCriterion("main_permit not in", values, "mainPermit");
            return (Criteria) this;
        }

        public Criteria andMainPermitBetween(String value1, String value2) {
            addCriterion("main_permit between", value1, value2, "mainPermit");
            return (Criteria) this;
        }

        public Criteria andMainPermitNotBetween(String value1, String value2) {
            addCriterion("main_permit not between", value1, value2, "mainPermit");
            return (Criteria) this;
        }

        public Criteria andNoteIsNull() {
            addCriterion("note is null");
            return (Criteria) this;
        }

        public Criteria andNoteIsNotNull() {
            addCriterion("note is not null");
            return (Criteria) this;
        }

        public Criteria andNoteEqualTo(String value) {
            addCriterion("note =", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteNotEqualTo(String value) {
            addCriterion("note <>", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteGreaterThan(String value) {
            addCriterion("note >", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteGreaterThanOrEqualTo(String value) {
            addCriterion("note >=", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteLessThan(String value) {
            addCriterion("note <", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteLessThanOrEqualTo(String value) {
            addCriterion("note <=", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteLike(String value) {
            addCriterion("note like", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteNotLike(String value) {
            addCriterion("note not like", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteIn(List<String> values) {
            addCriterion("note in", values, "note");
            return (Criteria) this;
        }

        public Criteria andNoteNotIn(List<String> values) {
            addCriterion("note not in", values, "note");
            return (Criteria) this;
        }

        public Criteria andNoteBetween(String value1, String value2) {
            addCriterion("note between", value1, value2, "note");
            return (Criteria) this;
        }

        public Criteria andNoteNotBetween(String value1, String value2) {
            addCriterion("note not between", value1, value2, "note");
            return (Criteria) this;
        }

        public Criteria andMainStatusIsNull() {
            addCriterion("main_status is null");
            return (Criteria) this;
        }

        public Criteria andMainStatusIsNotNull() {
            addCriterion("main_status is not null");
            return (Criteria) this;
        }

        public Criteria andMainStatusEqualTo(Integer value) {
            addCriterion("main_status =", value, "mainStatus");
            return (Criteria) this;
        }

        public Criteria andMainStatusNotEqualTo(Integer value) {
            addCriterion("main_status <>", value, "mainStatus");
            return (Criteria) this;
        }

        public Criteria andMainStatusGreaterThan(Integer value) {
            addCriterion("main_status >", value, "mainStatus");
            return (Criteria) this;
        }

        public Criteria andMainStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("main_status >=", value, "mainStatus");
            return (Criteria) this;
        }

        public Criteria andMainStatusLessThan(Integer value) {
            addCriterion("main_status <", value, "mainStatus");
            return (Criteria) this;
        }

        public Criteria andMainStatusLessThanOrEqualTo(Integer value) {
            addCriterion("main_status <=", value, "mainStatus");
            return (Criteria) this;
        }

        public Criteria andMainStatusIn(List<Integer> values) {
            addCriterion("main_status in", values, "mainStatus");
            return (Criteria) this;
        }

        public Criteria andMainStatusNotIn(List<Integer> values) {
            addCriterion("main_status not in", values, "mainStatus");
            return (Criteria) this;
        }

        public Criteria andMainStatusBetween(Integer value1, Integer value2) {
            addCriterion("main_status between", value1, value2, "mainStatus");
            return (Criteria) this;
        }

        public Criteria andMainStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("main_status not between", value1, value2, "mainStatus");
            return (Criteria) this;
        }

        public Criteria andPostponeDegreeIsNull() {
            addCriterion("postpone_degree is null");
            return (Criteria) this;
        }

        public Criteria andPostponeDegreeIsNotNull() {
            addCriterion("postpone_degree is not null");
            return (Criteria) this;
        }

        public Criteria andPostponeDegreeEqualTo(Integer value) {
            addCriterion("postpone_degree =", value, "postponeDegree");
            return (Criteria) this;
        }

        public Criteria andPostponeDegreeNotEqualTo(Integer value) {
            addCriterion("postpone_degree <>", value, "postponeDegree");
            return (Criteria) this;
        }

        public Criteria andPostponeDegreeGreaterThan(Integer value) {
            addCriterion("postpone_degree >", value, "postponeDegree");
            return (Criteria) this;
        }

        public Criteria andPostponeDegreeGreaterThanOrEqualTo(Integer value) {
            addCriterion("postpone_degree >=", value, "postponeDegree");
            return (Criteria) this;
        }

        public Criteria andPostponeDegreeLessThan(Integer value) {
            addCriterion("postpone_degree <", value, "postponeDegree");
            return (Criteria) this;
        }

        public Criteria andPostponeDegreeLessThanOrEqualTo(Integer value) {
            addCriterion("postpone_degree <=", value, "postponeDegree");
            return (Criteria) this;
        }

        public Criteria andPostponeDegreeIn(List<Integer> values) {
            addCriterion("postpone_degree in", values, "postponeDegree");
            return (Criteria) this;
        }

        public Criteria andPostponeDegreeNotIn(List<Integer> values) {
            addCriterion("postpone_degree not in", values, "postponeDegree");
            return (Criteria) this;
        }

        public Criteria andPostponeDegreeBetween(Integer value1, Integer value2) {
            addCriterion("postpone_degree between", value1, value2, "postponeDegree");
            return (Criteria) this;
        }

        public Criteria andPostponeDegreeNotBetween(Integer value1, Integer value2) {
            addCriterion("postpone_degree not between", value1, value2, "postponeDegree");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andAlterTimeIsNull() {
            addCriterion("alter_time is null");
            return (Criteria) this;
        }

        public Criteria andAlterTimeIsNotNull() {
            addCriterion("alter_time is not null");
            return (Criteria) this;
        }

        public Criteria andAlterTimeEqualTo(Date value) {
            addCriterion("alter_time =", value, "alterTime");
            return (Criteria) this;
        }

        public Criteria andAlterTimeNotEqualTo(Date value) {
            addCriterion("alter_time <>", value, "alterTime");
            return (Criteria) this;
        }

        public Criteria andAlterTimeGreaterThan(Date value) {
            addCriterion("alter_time >", value, "alterTime");
            return (Criteria) this;
        }

        public Criteria andAlterTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("alter_time >=", value, "alterTime");
            return (Criteria) this;
        }

        public Criteria andAlterTimeLessThan(Date value) {
            addCriterion("alter_time <", value, "alterTime");
            return (Criteria) this;
        }

        public Criteria andAlterTimeLessThanOrEqualTo(Date value) {
            addCriterion("alter_time <=", value, "alterTime");
            return (Criteria) this;
        }

        public Criteria andAlterTimeIn(List<Date> values) {
            addCriterion("alter_time in", values, "alterTime");
            return (Criteria) this;
        }

        public Criteria andAlterTimeNotIn(List<Date> values) {
            addCriterion("alter_time not in", values, "alterTime");
            return (Criteria) this;
        }

        public Criteria andAlterTimeBetween(Date value1, Date value2) {
            addCriterion("alter_time between", value1, value2, "alterTime");
            return (Criteria) this;
        }

        public Criteria andAlterTimeNotBetween(Date value1, Date value2) {
            addCriterion("alter_time not between", value1, value2, "alterTime");
            return (Criteria) this;
        }

        public Criteria andServiceIdIsNull() {
            addCriterion("service_id is null");
            return (Criteria) this;
        }

        public Criteria andServiceIdIsNotNull() {
            addCriterion("service_id is not null");
            return (Criteria) this;
        }

        public Criteria andServiceIdEqualTo(Integer value) {
            addCriterion("service_id =", value, "serviceId");
            return (Criteria) this;
        }

        public Criteria andServiceIdNotEqualTo(Integer value) {
            addCriterion("service_id <>", value, "serviceId");
            return (Criteria) this;
        }

        public Criteria andServiceIdGreaterThan(Integer value) {
            addCriterion("service_id >", value, "serviceId");
            return (Criteria) this;
        }

        public Criteria andServiceIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("service_id >=", value, "serviceId");
            return (Criteria) this;
        }

        public Criteria andServiceIdLessThan(Integer value) {
            addCriterion("service_id <", value, "serviceId");
            return (Criteria) this;
        }

        public Criteria andServiceIdLessThanOrEqualTo(Integer value) {
            addCriterion("service_id <=", value, "serviceId");
            return (Criteria) this;
        }

        public Criteria andServiceIdIn(List<Integer> values) {
            addCriterion("service_id in", values, "serviceId");
            return (Criteria) this;
        }

        public Criteria andServiceIdNotIn(List<Integer> values) {
            addCriterion("service_id not in", values, "serviceId");
            return (Criteria) this;
        }

        public Criteria andServiceIdBetween(Integer value1, Integer value2) {
            addCriterion("service_id between", value1, value2, "serviceId");
            return (Criteria) this;
        }

        public Criteria andServiceIdNotBetween(Integer value1, Integer value2) {
            addCriterion("service_id not between", value1, value2, "serviceId");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}